home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / telecomm / sticpsrc.lzh / DOC / ATARI.ARC / ATARI.DOC next >
Text File  |  1988-07-15  |  12KB  |  286 lines

  1. 06601030305800
  2. F0000000
  3. 9[...................................................]001
  4. êNETandBMportedtotheAtariST
  5. Ç
  6. byR.E.Janssen,PE1CHL.
  7.  
  8. TheNETandBMprogramshavebeenportedtotheAtariSTseries
  9. ofcomputers.AllmodelsoftheSTseries(260,520,1040and
  10. MEGA)arebasicallythesame,andtheprogramsshouldrunonall
  11. versions,bothwithTOSinRAM,andtheoriginalorthe"blitter
  12. TOS"inROM.TheprogramshavebeencompiledusingMarkWilliams
  13. Cversion2.1.7.Othercompilersrequirequitesomechangesto
  14. manymodules,soIrecommendstickingwithMWifyouwantto
  15. recompilethepackage.
  16.  
  17.  
  18. êChangesmadewhenportingtotheAtariSTÇ
  19.  
  20. -BecausetheAtariSTissoldwiththeGEMDesktopasthe
  21. primaryuserinterface,no"standard"commandprocessor
  22. existsthatcanbecalledfromNETandBMwhenasubshellis
  23. requested.However,severalcommandprocessorsexist,both
  24. availablecommerciallyandinthepublicdomain.Therefore,
  25. avariantofthe"shell"commandhasbeenimplementedin
  26. NET,thatallowsyoutosetthepathnameoftheprogramto
  27. beexecutedasacommandprocessor.Thesyntaxis:
  28.  
  29. shell=pathname
  30.  
  31. Thisstatementcanbeincludedintheautoexec.netfile.
  32. Example:
  33.  
  34. shell=c:\toolkit\command.tos
  35.  
  36. NoequivalentsyntaxhasbeenbuiltinBM,Ithingthe
  37. configurationfileaccessroutinesshouldbemadesomewhat
  38. moresophisticated,beforeaddingtoomanyoptional
  39. reconfigurationcommands.Workstilltobedone...
  40.  
  41. -Thisimplementationonlyknowsabout"asy"hardware.2
  42. portsaredefined,onebeingtheRS232serialport,andthe
  43. othertheMIDIserialport.BothcanbeusedforKISSor
  44. SLIPlinks.
  45.  
  46. TheRS232portcanbeattachedwith:
  47.  
  48. attach asy 0 0 ax25 ax0 2048 256 9600
  49.  
  50. Thisattachestheportforax25(KISS)operation,asdevice
  51. ax0,witha2048bytebuffer,anMTUof256,andabaudrate
  52. of9600bauds.
  53. TheRS232portisaccessedusing"hardwareaddress"0.This
  54. doesnotrepresentthephysicallocationofthechip,but
  55. ratherthedevicenumberusedintheAtariIorec()call...
  56. Validbaudratesare300,600,1200,1800,2000,2400,3600,
  57. 4800,9600and19200bauds.
  58. Ç
  59. TheMIDIportcanbeattachedwith:
  60.  
  61. attach asy 2 0 ax25 ax1 2048 256 9600
  62.  
  63. ThisportusesthesameparameterstructureastheRS232
  64. portattachcommand.The"hardwareaddress"is2.
  65. Somerestrictionsapplytotheusageofthisport:
  66.  
  67. -Thebaudrateisonlysettableto7812or31250bauds.A
  68. simplehardwaremodificationmakesitpossibleto
  69. changethisto9600or38400bauds,butthesoftware
  70. can'ttellthedifference,soitwillblindlyaccept
  71. all4mentionedvaluesforthebaudrate,assumingthat
  72. youinstalledthemodifyouspecify9600or38400.
  73.  
  74. -Ofcourse,theinterfaceonthisportisa5mAcurrent
  75. loop,soyouwillneedanexternalconversioncircuit
  76. ifyouwanttoconnectthistoanRS232TNC.Please
  77. note,that"currentON"onthemidiportcorrespondsto
  78. apositivevoltageontheRS232pins,thisisreverse
  79. from"normal"currentloopoperationasusedwith
  80. teleprintersandthelike.
  81.  
  82. -Thetransmitroutineonthisportdoesnotuse
  83. interrupts,butitbusy-waitsforeachcharacterina
  84. frame.Thisisbecausetheinterrupthandlerforthe
  85. serialchipusedonMIDIissharedwiththe
  86. keyboard/mouseinterrupthandler,anditdoesnot
  87. supporttransmitterinterrupts....
  88.  
  89. TheMIDIportCANbeusedtolinktwoSTsusingSLIP,andno
  90. hardwaremodsarenecessary.Onlyconnect4wiresbetween
  91. theMIDIportsonthemachines(fromMIDIINtoMIDIOUTand
  92. viceversa)andusethefollowingattachcommand:
  93.  
  94. attach asy 2 0 slip sl0 4096 576 31250
  95.  
  96. -    End-of-lineconventions.Someextraworkhasgonein
  97. attemptstocorrecttheend-of-linesequencesgeneratedby
  98. theRECORDcommandsformAX.25andTELNET,andtheASCII
  99. typefiletransferfromFTP.AsobservedbyPhil,thewhole
  100. messofCR/LFhandlinghasbeenneatlyavoidedbyUNIX,but
  101. wepoorsoulsusingMS-DOS(orAtariTOS)needtosolvethe
  102. probleminsomeway.OntheMarkWilliamscompilerforthe
  103. ST,thedefaultopenmodeforfilesis"textmode",andin
  104. thiscaseall\ncharactersgettranslatedtoCR/LFpairsin
  105. thefile,andvice-versa.ThismeansthatwritingCR/LFin
  106. textmoderesultsinCR/CR/LFinthefile.Youcanopenthe
  107. filein"binarymode"(using"wb"inthefopencall),and
  108. thecharacterswillbewrittenuntranslated.Thisseemsto
  109. bemorelikethebehaviourofAztecC,soIusedthebinary
  110. modeasatemporaryfixfortheproblemswithRECORDmode,
  111. butthisshouldreallybefixedinthecodeatthe
  112. Çappropriateplace.IdidsomeworkinthecodeforAX.25
  113. mode,butcommenteditoutfornow.TheTELNETcodestill
  114. needstobeconverted.IFyouwanttogetthiscorrectin
  115. theUNIXversion,itshouldbefixedbecauseUNIXdoesnot
  116. knowabout"filemodes"andalwayswriteswhatyoutellit
  117. towrite...
  118.  
  119. -BMfilenamingconventionshavebeenchangedtoallowuseof
  120. theprogramonnon-DOSenvironments,usingthesameapproach
  121. asintheNETprogram(871225release).Module"files.c"is
  122. nowalsousedbyBM,andindefinesallfilenamesand
  123. directorynamesusedintheprogram.Thebm_rc[]definition
  124. hasbeenaddedforthispurpose.Pleasenote,that
  125. directorynamesalsoincludethetrailing\or/character,
  126. thisisbecausetheseparatorcharacteruseddiffersbetween
  127. DOS,UNIXandAtariTOS.Thisalsomeansthatthesyntaxof
  128. the"smtp"commandintheBM.RCfilehaschanged,itnow
  129. shouldalsoincludethetrailingseparator.Infact,the
  130. smtpcommandisnotreallynecessarybecausethedefault
  131. valueisnowequaltothevalueusedbyNET.
  132. ê
  133. Ç-DIRUTIL.ChasbeenrevisedtorunonbothMS-DOSandAtari
  134. TOS,andsomecleanuphasbeendoneonthecode.Now,itis
  135. possibletodefinethecharacterusedtoseparatethedigits
  136. inlargenumbers,bycompilingwith-DTHSEP="'.'"
  137.  
  138. -    BMnowusesNET'sversionofDIRUTIL.C.Thismodulecould
  139. besplituptoavoidinclusionofdirectoryprintroutines.
  140.  
  141. -AnextraoptionhasbeenaddedtoBM.RC:
  142.  
  143. tzTIM
  144.  
  145.      setsthetimezoneusedindate/timestringsproducedbyBM.
  146. Thiswasnecessarybecausenostandardwayhasbeendefined
  147. toaddvaluestothetop-levelenvironmentoftheST
  148. operatingsystem,sothegetenv()wouldalwaysfailifyou
  149. startedBMfromthedesktop.Now,youcandefineyourlocal
  150. timezoneinBM.RC(shouldbe3characters,e.g.GMT,WET).
  151.  
  152. -    ChangesweremadetoGLOBAL.HbecauseofbugsintheMark
  153. WilliamsCcompiler:
  154. 
  155. -theconstruct'x>>16'confusestheoptimizer,
  156. thereforethehiworddefinehasbeenchangedtoa
  157. function,andtheshiftiscodeddifferentlyinthis
  158. function(atari.c)
  159.  
  160. -thecompilerdoesn'tlikevoidpointerstobefurther
  161. typecasted.(asin:(structmbuf**)(void*)0)
  162. therefore,thegeneralpurposepointerhasbeenchanged
  163. tochar*type.
  164.  
  165. -STILLEXPERIMENTAL:Desktopaccessoryversion
  166. ÇI'mworkingonaversionofNETthatcanrunasadesktop
  167. accessoryontheST.Thecodeisincludedwiththis
  168. version,andcanbecomiledbydefiningtheGEMDESK
  169. preprocessorsymbol.Anentryinthemakefile,NET.ACC,
  170. providesforthis.Theresultingprogramstillhassome
  171. problems